package com.yilizhiyou.service;

import java.util.Map;

/**
 * AI服务接口
 * 
 * @author 伊犁智游开发团队
 * @since 1.0.0
 */
public interface AiService {

    /**
     * 语音识别
     * 
     * @param audioData 音频数据
     * @param language 语言
     * @return 识别结果
     */
    String speechToText(byte[] audioData, String language);

    /**
     * 语音合成
     * 
     * @param text 文本内容
     * @param language 语言
     * @param voiceType 语音类型
     * @return 音频数据
     */
    byte[] textToSpeech(String text, String language, String voiceType);

    /**
     * 图像识别
     * 
     * @param imageData 图像数据
     * @return 识别结果
     */
    Map<String, Object> imageRecognition(byte[] imageData);

    /**
     * 人流检测
     * 
     * @param imageData 图像数据
     * @return 检测结果
     */
    Map<String, Object> crowdDetection(byte[] imageData);

    /**
     * 自然语言处理
     * 
     * @param text 文本内容
     * @param task 任务类型
     * @return 处理结果
     */
    Map<String, Object> naturalLanguageProcessing(String text, String task);

    /**
     * 智能问答
     * 
     * @param question 问题
     * @param context 上下文
     * @return 回答
     */
    String intelligentQa(String question, String context);

    /**
     * 情感分析
     * 
     * @param text 文本内容
     * @return 情感分析结果
     */
    Map<String, Object> sentimentAnalysis(String text);

    /**
     * 文本翻译
     * 
     * @param text 文本内容
     * @param sourceLanguage 源语言
     * @param targetLanguage 目标语言
     * @return 翻译结果
     */
    String textTranslation(String text, String sourceLanguage, String targetLanguage);
}
